package com.mmp.main.servlet.report;

import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.mmp.common.servlet.BasicServlet;
import com.mmp.main.entity.HospitalDevice;
import com.mmp.main.util.Default;
import com.mmp.main.util.Enums;
import com.mmp.main.util.WebUtil;

public class ViewPPMTable extends BasicServlet {

	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		Integer category = WebUtil.getParamValueAsInteger(request, "category", 0);
		Map<Integer, Object> map = new HashMap<Integer, Object>();
		String jpql = "select h from HospitalDevice h where h.status != "
				+ Enums.DEVICE_STATUS.SCRAPPED.getStatus();

		if (category != 0) {
			jpql += " and h.lookupDeviceCategory.id = ? ";
			map.put(1, category);
		}

		jpql += " order by h.lookupDeviceCategory.name, h.deviceName ";
		
		
		
		List<HospitalDevice> deviceList = dbm.queryJPQL(jpql, map, HospitalDevice.class);
		if (deviceList == null || deviceList.isEmpty()) {
			announceErorrMessage(request, response, "عفوا .. لا توجد  أجهزة من الفئة التي تم  اختيارها");
		} else {
			HashMap params = new HashMap();
			params.put(Default.REPORT_TITLE_PARAM_NAME, Enums.REPORT_TITLE.PPM_TABLE.getReportTitle());
			params.put("deviceList", deviceList);
			viewPDFReport("rt7.jasper", null, params, response);
		}	
	}
}
